import request from '@/config/axios'

// PI 巡查档案 VO
export interface PatrolVO {
  id: number // 编号
  name: string // 名字
  categoryId: number // 分类编号
  categoryName?: string // 分类名称
}

// PI 巡查档案 API
export const PatrolApi = {
  // 查询PI 巡查档案分页
  getPatrolPage: async (params: any) => {
    return await request.get({ url: `/pi/patrol/page`, params })
  },

  // 获得巡查档案精简列表
  getPatrolSimpleList: async () => {
    return await request.get({ url: `/pi/patrol/simple-list` })
  },
  
  // 查询PI 巡查档案详情
  getPatrol: async (id: number) => {
    return await request.get({ url: `/pi/patrol/get?id=` + id })
  },

  // 新增PI 巡查档案
  createPatrol: async (data: PatrolVO) => {
    return await request.post({ url: `/pi/patrol/create`, data })
  },

  // 修改PI 巡查档案
  updatePatrol: async (data: PatrolVO) => {
    return await request.put({ url: `/pi/patrol/update`, data })
  },

  // 删除PI 巡查档案
  deletePatrol: async (id: number) => {
    return await request.delete({ url: `/pi/patrol/delete?id=` + id })
  },

  // 导出PI 巡查档案 Excel
  exportPatrol: async (params) => {
    return await request.download({ url: `/pi/patrol/export-excel`, params })
  },

// ==================== 子表（PI 巡查档案异常选项） ====================

  // 获得PI 巡查档案异常选项列表
  getPatrolExceptionItemsListByPiPatrolId: async (piPatrolId) => {
    return await request.get({ url: `/pi/patrol/patrol-exception-items/list-by-pi-patrol-id?piPatrolId=` + piPatrolId })
  },

// ==================== 子表（PI 巡查档案处理结果选项） ====================

  // 获得PI 巡查档案处理结果选项列表
  getPatrolProcessingItemsListByPiPatrolId: async (piPatrolId) => {
    return await request.get({ url: `/pi/patrol/patrol-processing-items/list-by-pi-patrol-id?piPatrolId=` + piPatrolId })
  },

// ==================== 子表（PI 巡查档案一级异常选项） ====================

  // 获得PI 巡查档案一级异常选项列表
  getPatrolFirstOptionsListByPiPatrolId: async (piPatrolId) => {
    return await request.get({ url: `/pi/patrol/patrol-first-options/list-by-pi-patrol-id?piPatrolId=` + piPatrolId })
  },

// ==================== 子表（PI 巡查档案二级异常选项） ====================

  // 获得PI 巡查档案二级异常选项列表
  getPatrolSecondOptionsListByPiPatrolId: async (piPatrolId) => {
    return await request.get({ url: `/pi/patrol/patrol-second-options/list-by-pi-patrol-id?piPatrolId=` + piPatrolId })
  },
}
